/**********************************************************************************************
 * @brief USEGE


 ***********************************************************************************************/

#ifndef __filter_default_bkjl6sdoi7fjwe90e3wf9__
#define __filter_default_bkjl6sdoi7fjwe90e3wf9__

#include <string>

namespace hude
{
    /*********************************************************************
     * @brief ...
     */
    struct filter_default_t
    {
        void send( std::string& )
        {
        }

        void recv( std::string& )
        {
        }
    };

    /*********************************************************************
     * @brief rpc过滤器,打印输入和输出的桢内容
     */
    template< bool _debug >
    struct _filter_debug_t
    {
        static bool debug_;

        void send( std::string& str )
        {
            if( debug_ ) log_dug( "\trpc >>> send( %s )", str.c_str() );
        }

        void recv( std::string& str )
        {
            if( debug_ ) log_dug( "\trpc <<< recv( %s )", str.c_str() );
        }
    };

    template< bool _debug >
    bool _filter_debug_t< _debug >::debug_ = _debug;

    /*********************************************************************
     * @brief rpc调试过滤器的常用别名
     */
    using filter_debug_t = _filter_debug_t< true >;

} //namespace hude

#endif //__filter_default_bkjl6sdoi7fjwe90e3wf9__
//file end

